package com.smartwasser.yunhtgl.apphtgl.pager;

import android.content.Context;
import android.view.View;
import android.widget.TextView;

import com.dou361.dialogui.listener.DialogUIItemListener;
import com.smartwasser.yunhtgl.apphtgl.App;
import com.smartwasser.yunhtgl.apphtgl.R;
import com.smartwasser.yunhtgl.apphtgl.activity.GestureSetActivity;
import com.smartwasser.yunhtgl.apphtgl.activity.LoginActivity;
import com.smartwasser.yunhtgl.apphtgl.base.BasePager;
import com.smartwasser.yunhtgl.apphtgl.bean.UserMessages;
import com.smartwasser.yunhtgl.apphtgl.presenter.MPagerPresenter;
import com.smartwasser.yunhtgl.apphtgl.presenter.MPagerPresenterImpl;
import com.smartwasser.yunhtgl.apphtgl.utils.AppConfigSP;
import com.smartwasser.yunhtgl.apphtgl.view.MPagerView;
import com.smartwasser.yunhtgl.apphtgl.utils.Logger;
import com.smartwasser.yunhtgl.apphtgl.widget.CustomToast;
import com.smartwasser.yunhtgl.apphtgl.widget.IosAlertStyle;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;

import static com.dou361.dialogui.DialogUIUtils.showBottomSheetAndCancel;
import static com.smartwasser.yunhtgl.apphtgl.utils.SharedUtils.getStringData;

public class MPager extends BasePager implements MPagerView {
    private MPagerPresenter mPagerPresenter = new MPagerPresenterImpl(this);
    @BindView(R.id.user_company)
    TextView user_company;
    @BindView(R.id.user_bm)
    TextView user_bm;
    @BindView(R.id.user_name)
    TextView user_name;
    @BindView(R.id.user_yx)
    TextView user_yx;
    @BindView(R.id.user_tel)
    TextView user_tel;
    @BindView(R.id.user_mobile)
    TextView user_mobile;

    public MPager(Context context) {
        super(context);
    }

    @Override
    public View initView() {
        view = View.inflate(context, R.layout.activity_page_m, null);
        ButterKnife.bind(this, view);
        initData();
        return view;
    }

    @Override
    public void initData() {
        try {
            mPagerPresenter.getUserData(getStringData(context, "JSESSIONID", ""));
            Logger.e(getStringData(context, "JSESSIONID", ""));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @OnClick({R.id.m_photo, R.id.login_out})
    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.m_photo:
                // takePhoto();
                break;
            case R.id.login_out:

                new IosAlertStyle(context).builder().setTitle("退出登陆").setMsg("退出后无法获取数据，确定退出吗?")
                        .setPositiveButton("确定", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {
                                App.getInstance().cleanActivity();
                                AppConfigSP sp = new AppConfigSP(context);
                                sp.setGesturePassword("");
                                startActivity(LoginActivity.class);
                            }
                        })
                        .setNegativeButton("取消", new View.OnClickListener() {
                            @Override
                            public void onClick(View v) {

                            }
                        }).show();
                break;
        }
    }

    @Override
    public void success(UserMessages userMessages) {
        user_company.setText(userMessages.getUser().getCompany().getName());
        user_bm.setText(userMessages.getUser().getOffice().getName());
        user_name.setText(userMessages.getUser().getLoginName());
        user_yx.setText(userMessages.getUser().getEmail());
        user_tel.setText(userMessages.getUser().getPhone());
        user_mobile.setText(userMessages.getUser().getMobile());
        Logger.e(userMessages.getUser().getCompany().getName());
        Logger.e(userMessages.getUser().getOffice().getName());
        Logger.e(userMessages.getUser().getLoginName());
        Logger.e(userMessages.getUser().getEmail());
        Logger.e(userMessages.getUser().getPhone());
        Logger.e(userMessages.getUser().getMobile());
    }

    @Override
    public void error() {
    }

    public void takePhoto() {
        List<String> strings = new ArrayList<>();
        strings.add("拍照");
        strings.add("图库");
        showBottomSheetAndCancel(context, strings, "取消", new DialogUIItemListener() {
            @Override
            public void onItemClick(CharSequence text, int position) {
                switch (position) {
                    case 0:
                        CustomToast.showToast(context, "拍照");
                        break;
                    case 1:
                        CustomToast.showToast(context, "图库");
                        break;
                }
            }
        }).show();
    }
}
